import React, { Component, Suspense } from 'react'
import { Redirect, Route, Switch } from 'react-router-dom';

export class RouterView extends Component {
    render() {
        const { routerConfig } = this.props;
        return (
            <Suspense fallback="路由加载中">
                <Switch>
                    {
                        routerConfig.length ?
                            routerConfig.map((item, index) => {
                                return item.redirect ?
                                    <Redirect key={index}
                                        to={item.redirect} //to: 跳转到指定路径
                                    >
                                    </Redirect> :
                                    <Route key={index}
                                        path={item.path}
                                        render={(props) => {
                                            return <item.component
                                                {...props}
                                                routerConfig={item.children}
                                            ></item.component>
                                        }}
                                    ></Route>
                            }) : "暂无路由"
                    }
                </Switch>
            </Suspense>
        )
    }
}

export default RouterView